package cn.edu.xmist.pojo;

/**
 * @author zhongjinbin 2021/4/9
 * @since 0.0.1
 * 学生类信息有 学号，年龄，姓名，身份证。其中学号是唯一的。
 *     实现在控制台的学员信息管理，
 *     包括学员信息添加(判断是否重复)，修改，删除*，和全部显示。
 *     使用ArrayList<E>保存学生对象信息
 *     效果类似：
 *     请选择您的操作
 *     1、显示全部学员
 *     2、删除
 *     3、增加
 *     4、修改
 *     0、退出
 */
public class Student {

    /**
     * 学号
     */
    private int stuNo ;
    /**
     * 年龄
     */
    private int age ;
    /**
     * 名字
     */
    private String name ;
    /**
     * 身份证
     */
    private String idNumber;

    public Student() {
    }
    public Student(int stuNo, int age, String name, String idNumber) {
        this.stuNo = stuNo;
        this.age = age;
        this.name = name;
        this.idNumber = idNumber;
    }

    public int getStuNo() {
        return stuNo;
    }
    public void setStuNo(int stuNo) {
        this.stuNo = stuNo;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getIdNumber() {
        return idNumber;
    }
    public void setIdNumber(String idNumber) {
        this.idNumber = idNumber;
    }

    /**
     * 如果两个学生对象的学号和姓名相等，认为是同一个学生对象
     * @param anObj
     * @return
     */
    @Override
    public boolean equals(Object anObj) {
        System.out.println("equals(Object anotherObj)方法重写");
        if (this == anObj) {
            return true;
        }
        if (!(anObj instanceof Student)) {
            return false;
        }
        Student other = (Student) anObj;
        if (this.stuNo == other.stuNo && this.name.equals(other.name)) {
            return true;
        }
        return false;
    }
}
